perm filename COMPR[P,JRA]4 blob sn#122576 filedate 1974-10-03 generic text, type T, neo UTF8
00100	
00150	
00200	
00250	(DEFPROP LISTSET
00300	   (LAMBDA(C PS)
00350		(COND((NULL C)PS)
00400		     ((NULL(CAR C))(LISTSET(CDR C)PS))
00450		     ((EQ @*(CAAR C))(LISTSET(CONS(CDAR C)(CDR C))PS))
00500		     (T((LAMBDA(X)(LISTSET(CONS(CDAR C)(CDR C))X))
00550			   (NCONC(LISTSET1(COND((EQ NEGSGN(CAAAR C))(CDAAR C))
00600					      (T(CAAR C)))
00650					 PS)
00700				PS)))))
00750	EXPR)
00800	
00850	
00900	(DEFPROP LISTSET1
00950	   (LAMBDA(C PS)
01000		(COND((NULL PS)(LIST C))
01050		     ((OR(EQ(CAR C)(CAAR PS))(NOT(ATOM(CAR C))))NIL)
01100		     (T(LISTSET1 C(CDR PS)))))
01150	EXPR)
01200	
01250	
01300	
01350	(DEFPROP GETPREDS
01400	   (LAMBDA(F P)
01450		(COND((NULL F)P)
01500		     ((GET(CAR F)@ITER)(GETPREDS(CDR F)(LISTSET(APPEND(GET(CAR F)@IG)(GET(CAR F)@INVAR)
01525							(GET(CAR F)@IBAS)(GET(CAR F)@ICT)(GET(CAR F)@ISTEP))P) ))
01550		     (T(GETPREDS(CDR F)(LISTSET(APPEND((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET(CAR F)@PRE))
01600						      (GET(CAR F)@POST))P)))))
01650	EXPR)
01700	
01750	
01800	
01850	(DEFPROP ARGLIST
01900	   (LAMBDA(A)
01950		(COND((NULL A)NIL)
02000		     (T(CONS(COND((NOT(ATOM(CAR A)))(LIST @THV(CAAR A)))
02050			         (T(LIST @THV(CAR A))))(ARGLIST(CDR A))))))
02100	EXPR)
02150	
02152	
02154	(DEFPROP GARGLIST
02156	   (LAMBDA(AL SW CT)
02158		(COND((NULL AL)NIL)
02160		     (T(CONS(COND(SW(LIST @THV(READLIST(LIST @V(ADD1 CT))) ))
02162				 (T(READLIST(LIST @V(ADD1 CT))) ))
02164			    (GARGLIST(CDR AL)SW(ADD1 CT))))))
02166	EXPR)
02168	
02200	
02250	(DEFPROP FARGLIST
02300	   (LAMBDA(A)
02350		(COND((NULL A)NIL)
02400		     (T(CONS(COND((ATOM(CAR A))(LIST @THV(CAR A)))
02450				 (T(CONS @LIST(FARGLIST(CAR A)))))
02500			    (FARGLIST(CDR A)))))   )
02550	EXPR)
02600	
02650	
02700	
02750	(DEFPROP SOFTINT
02800	   (LAMBDA(P)
02850	     (PROG(PL PR SW)
02900		(TERPRI)(TERPRI)
02950		(SETQ PL P)
03000	SO2	(SETQ SW NIL)
03050		(SETQ PR(CAAR PL))
03100		(COND((NOT(GET PR @FLUENT))(GO SO4)))
03150		(COND((GET(READLIST(APPEND(EXPLODE  PR)(LIST @G @R @E @M @L @I @N))) @THEOREM)(GO SO4)))
03200	SO3	(PRINT(LIST @THVSETQ(LIST @THV(READLIST(APPEND(EXPLODE PR)(LIST @A @R @G @S))))
03250				    NIL))
03400		(PRINT(LIST @THVSETQ(LIST @THV(READLIST(APPEND(EXPLODE PR)(LIST @I @N @S @T))))
03450				    NIL))
03500		(TERPRI)
03550		(PRINT(LIST @DEFPROP(READLIST(APPEND(EXPLODE PR)(LIST @G @R @E @M @L @I @N)))
03600	(LIST @THERASING(GARGLIST(CDAR PL)NIL 0)(APPEND(CONS PR(APPEND(GARGLIST(CDAR PL)T 0)(LIST @R))))
03650		                   (LIST @THCOND(LIST(LIST @MEMBER(LIST @THV(READLIST(APPEND(EXPLODE PR)(LIST @I @N @S @T))))
03700								  (LIST @THV(READLIST(APPEND(EXPLODE PR)(LIST @A @R @G @S)))))
03750						     (LIST @THASSERT @(WRONG PATH)))))
03950			    @THEOREM))
04000		(TERPRI)
04050		(PRINT(LIST @THASSERT(READLIST(APPEND(EXPLODE PR)(LIST @G @R @E @M @L @I @N)))))
04100		(TERPRI)
04150		(SETQ PR(READLIST(APPEND(LIST @N)(EXPLODE PR))))
04200		(COND(SW(GO SO4))(T(SETQ SW T)))
04250		(GO SO3)
04300	SO4	(SETQ PL(CDR PL))
04350		(COND((NULL PL)(RETURN NIL))
04400		     (T(GO SO2)))   ))
04450	EXPR)
04500	
04550	
04600	
04650	
04700	
04750	
04800	(DEFPROP ASSERTCOND
04850	   (LAMBDA(PC)
04900		(COND((NULL PC)NIL)
04950		     ((EQ @PATTERN(CAAR(LAST(CAR PC))))(ASSERTCOND(CDR PC)))
05000		     ((AND(EQ NEGSGN(CAAR(LAST(CAR PC))))(NOT(GET(CADAR(LAST(CAR PC)))@PARTIAL)))(ASSERTCOND(CDR PC)))
05050		     ((MEMBER(PLPRED(CAR(LAST(CAR PC)))NIL)REDUNAS)(ASSERTCOND(CDR PC)))
05100		     (T(SETQ REDUNAS(CONS(PLPRED(CAR(LAST(CAR PC)))NIL)REDUNAS))(APPEND(LIST(LIST @THASSERT(APPEND(PLPRED(CAR(LAST(CAR PC)))NIL)
05150							 (COND((GET(COND((EQ NEGSGN(CAAAR PC))(CADAAR PC))
05200								         (T(CAAAR PC)))@FLUENT)(LIST @R))(T NIL))))
05250	(LIST @THCOND(LIST @(THV ULS) (LIST @THSETQ @(THV ASSERTLITS)
05300					(LIST @CONS(LIST @LIST(APPEND @(LIST)(LIST(LIST @QUOTE(CAR(PLPRED(CAR(LAST(CAR PC)))NIL))))
05350							  (CDR(PLPRED(CAR(LAST(CAR PC)))T))@(@R))(CONS @LIST
05375								 (UNEVALARG(CDR(CAR(LAST(CAR PC)))))))
05400					      @(THV ASSERTLITS))))(LIST T(LIST @THSETQ @(THV WASSERTLITS)
05410	(LIST @CONS(LIST @LIST(APPEND @(LIST)(LIST(LIST @QUOTE(CAR(PLPRED(CAR(LAST(CAR PC)))NIL))))
05414	(CDR(PLPRED(CAR(LAST(CAR PC)))T))@(@R))
05418	(CONS @LIST(UNEVALARG(CDR(CAR(LAST(CAR PC)))))))@(THV WASSERTLITS))) )))
05450			      (ASSERTCOND(CDR PC)) )))  )
05500	EXPR)
05550	
05600	
05650	
05700	(DEFPROP CDISPOST
05750	   (LAMBDA(PC)
05800	      (PROG(LPC TPC DNF CONJ LI)
05850		(SETQ LPC PC)
05900		(COND((EQ @PATTERN(CAAAR LPC))(SETQ LPC(CDR LPC))))
05950		(SETQ LPC(REVERSE LPC))
06000	CD1	(SETQ TPC(REVERSE LPC))     (SETQ LPC NIL)
06050	CD2	(SETQ LI(APPEND(PLPRED(CAAR TPC)NIL)
06100			       (COND((GET(COND((EQ NEGSGN(CAAAR TPC))(CADAAR TPC))
06150					      (T(CAAAR TPC)))@FLUENT)@(R))
06200				    (T NIL))))
06250		(COND((NOT(MEMBER LI CONJ))(SETQ CONJ(CONS LI CONJ))))
06300		(SETQ LPC(CONS(CDAR TPC)LPC))
06350		(SETQ TPC(CDR TPC))
06400		(COND(TPC(GO CD2)))
06450		(SETQ DNF(CONS CONJ DNF))
06500		(SETQ CONJ NIL)
06550		(COND((CAR LPC)(GO CD1)))
06600		(RETURN(LIST(LIST @DISPOST(LIST @QUOTE DNF))))   ))
06650	EXPR)
06700	
06750	
06800	
06850	
06900	
06950	
07000	
07050	
07100	
07150	(DEFPROP EXTCONT
07200	   (LAMBDA(A U P)
07250	      (PROG(ER AR UN PR X Y)
07300		(SETQ AR A)
07350		(SETQ UN U)
07400	EX1	(COND((NOT(EQ(CAR UN)@*))(GO EX5)))
07450		(COND((AND(NOT(ATOM(CAR AR)))(NOT(NUMBERP(CAAR AR))))(SETQ X(LIST @THEV(FARGVAL(CAR AR)))))
07500		     (T(SETQ X(CAR AR))))
07550		(COND((NOT(ATOM X))(SETQ Y(LIST @THV(CAR DL))))
07600		     (T(SETQ Y(CAR DL))))
07650		(SETQ PR (SUBST Y X P))
07700		(SETQ ER(CONS(LIST @THCOND(LIST(LIST @THGOAL(APPEND PR(LIST @R)))
07750					       (LIST @THSETQ(LIST @THV(READLIST(APPEND(EXPLODE(CAR PR))(LIST @I @N @S @T))))
07800						     (CONS @LIST(CDR PR))))(LIST T T))ER))
07850		(SETQ ER(CONS(LIST @THCOND(LIST(LIST @THGOAL(APPEND PR(LIST @R)))
07900					       (LIST @THERASE(APPEND PR(LIST @R))(LIST @THTBF @THTRUE)))
08050					  (LIST T T))ER))
08100		(COND(LOOK(SETQ ER(CONS(LIST @THCOND(LIST(LIST @THAND(LIST @THASVAL(LIST @THV(CAR DL)))
08150	 				(LIST @THERASE(APPEND PR(LIST @H))))T)(LIST T T))ER))))
08200		(SETQ DL(CDR DL))
08250	EX5	(SETQ AR(CDR AR))
08300		(SETQ UN(CDR UN))
08350		(COND(UN(GO EX1)))
08400		(RETURN ER)  ))
08450	EXPR)
08500	
08550	
08600	
08650	
08700	
08750	
08800	
08850	
08900	
08950	
09000	(DEFPROP ERASECOND
09050	   (LAMBDA(PC)
09100	      (PROG(LI SW PR EL NE UNI)
09200	ER1	(SETQ LI(CAR(LAST(CAR PC))))
09250		(COND((OR(EQ @PATTERN(CAR LI))(MEMBER LI REDUNER))(GO ER9)))
09300		(SETQ REDUNER(CONS LI REDUNER))
09350		(SETQ SW(COND((EQ NEGSGN(CAR LI))T)))
09400		(SETQ PR(COND(SW(CDR LI))(T LI)))
09450		(COND(SW(GO ER7)))
09500		(COND((GET(CAR PR)@UNIQ)(GO ER5)))
09550		(COND((NOT(GET(CAR PR)@PARTIAL))(GO ER9)))
09600	ER2	(SETQ NE(LIST @N))
09650	ER3	(SETQ EL(CONS(LIST @THSETQ(LIST @THV(READLIST(APPEND NE(EXPLODE(CAR PR))
09700								       (LIST @I @N @S @T))))
09750				   (CONS @LIST(CDR(PLPRED PR NIL))))EL))
09800		(SETQ EL(CONS(LIST @THDO(LIST @THERASE(APPEND(PLPRED(COND((EQUAL NE(LIST @N))(CONS NEGSGN PR))
09850									 (T PR))NIL)
09900							     (LIST @R))
09950					     (LIST @THTBF @THTRUE)))EL))
10000		(SETQ EL(CONS(LIST @THDO(LIST @THERASE(APPEND(PLPRED(COND((EQUAL NE(LIST @N))(CONS NEGSGN PR))(T PR))NIL)(LIST @H))))EL))
10050	ER4	(SETQ EL(CONS(APPEND(LIST @THCOND)(LIST(LIST @(THERASE(WRONG PATH))@(THFAIL THEOREM)))
10350				    (LIST @(T T)))EL))
10400		(GO ER9)
10450	ER5	(SETQ EL(APPEND(EXTCONT(CDR PR)(GET(CAR PR)@UNIQ)(PLPRED PR NIL))EL))
10500		(SETQ UNI T)
10550		(COND((GET(CAR PR)@PARTIAL)(GO ER2))
10600		     (T(GO ER4)))
10650	ER7	(COND((GET(CAR PR)@UNIQ)(SETQ EL(APPEND(EXTCONT(CDR PR)(GET(CAR PR)@UNIQ)
10700							    (PLPRED(CONS NEGSGN PR)NIL))EL))))
10750		(SETQ UNI T)
10800		(SETQ NE NIL)
10850		(GO ER3)
10900	ER9	(SETQ PC(CDR PC))
10950		(SETQ UNI NIL)
11000		(COND(PC(GO ER1)))
11050		(RETURN(REVERSE EL))  ))
11100	EXPR)
11150	
11200	
11250	(DEFPROP UNEVALARG
11300	   (LAMBDA(DPR)
11350		(COND((NULL DPR)NIL)
11400		     ((OR(ATOM(CAR DPR))(NOT(OR(EQ(CAAR DPR)@EV)(EQ(CAAR DPR)@EVN))))
11450		      (CONS @(QUOTE A)(UNEVALARG(CDR DPR))))
11500		     (T(CONS(APPEND(LIST @LIST(LIST(COND((MEMBER(CADAR DPR)PVARLIST)@THV)(T @QUOTE))(CAADAR DPR)))
11550				   (FARGVAL1(CDADAR DPR)))
11600			    (UNEVALARG(CDR DPR)))))  )
11650	EXPR)
11700	
11750	
11800	
11850	
11900	(DEFPROP FARGVAL
11950	   (LAMBDA(A)
12000		(COND((EQ(CAR A)@EV)(CAR(FARGVAL2(CDR A))))
12050		     ((EQ(CAR A)@EVN)(CADAR(FARGVAL3(CDR A))))
12100		     (T(CAR(FARGVAL1(LIST A))))))
12150	EXPR)
12200	
12250	
12300	
12350	
12400	(DEFPROP FARGVAL1
12450	   (LAMBDA(A)
12500		(COND((NULL A)NIL)
12550		     ((ATOM(CAR A))(CONS(LIST @THV(CAR A))(FARGVAL1(CDR A))))
12600		     (T(CONS(APPEND(LIST @LIST(LIST (COND((MEMBER(CAAR A)PVARLIST)@THV)
12650								  (T @QUOTE))(CAAR A)))(FARGVAL1(CDAR A)))
12700			    (FARGVAL1(CDR A))))))
12750	EXPR)
12800	
12850	
12900	(DEFPROP FARGVAL2
12950	   (LAMBDA(A)
13000		(COND((NULL A)NIL)
13050		     ((ATOM(CAR A))(CONS(LIST @THV(CAR A))(FARGVAL2(CDR A))))
13100		     (T(CONS(APPEND(LIST(CAAR A))(FARGVAL2(CDAR A)))(FARGVAL2(CDR A))))))
13150	EXPR)
13200	
13250	
13300	
13350	(DEFPROP FARGVAL3
13400	   (LAMBDA(A)
13450		(COND((NULL A)NIL)
13500		     ((ATOM(CAR A))(CONS(LIST (COND(BTSW @GETNUMARG)
13537						   (T @CAR))(LIST @THV(CAR A)))(FARGVAL3(CDR A))))
13575		     (T(CONS(LIST @CAR(LIST @LIST(APPEND(LIST(CAAR A))(FARGVAL3(CDAR A)))))(FARGVAL3(CDR A))))))
13600	EXPR)
13650	
13700	
13750	
13800	
13850	
13900	
13950	
14000	
14050	
14100	(DEFPROP INEQARG
14150	   (LAMBDA(OP)
14200	      (PROG(AR IE AS)
14250		(SETQ IE(GET OP @INEQ))
14300		(SETQ AR(GET OP @ARG))
14350		(COND((NULL IE)(RETURN NIL)))
14400	IN3	(COND((EQ(CAR IE)@*)(SETQ AS(CONS(CAR AR)AS))))
14450		(SETQ IE(CDR IE))
14500		(SETQ AR(CDR AR))
14550		(COND((NOT(NULL IE))(GO IN3)))
14600		(COND((NOT(AND AS(CAR AS)(CDR AS)(CADR AS)))(RETURN NIL)))
14650		(RETURN(LIST(LIST @THCOND(LIST(LIST @THAND(LIST @THASVAL(LIST @THV(CAR AS)))
14700							  (LIST @THASVAL(LIST @THV(CADR AS))))T)
14750					 (LIST T(LIST @THFAIL)))
14800			     (LIST @THCOND(LIST(LIST @EQUAL(LIST @THV(CAR AS))
14850							   (LIST @THV(CADR AS)))(LIST @THFAIL))
14900					  (LIST T T)))) ))
14950	EXPR)
15000	
15050	
15100	
15150	(DEFPROP DISJUN
15200	   (LAMBDA(C)
15250	      (PROG(SGSR TP TP1)
15300		(SETQ TP C)
15350	DI2	(SETQ TP1(CONS(LIST(CAR TP))TP1))
15400		(SETQ TP(CDR TP))
15450		(COND(TP(GO DI2)))
15500		(SETQ SGSR(SUBGOALCOND TP1 T))
15550		(COND((CDR SGSR)(SETQ SRG(APPEND(CDR SGSR)SRG))))
15600		(RETURN(CONS @THOR(APPEND(REJECTQUIK TP1 T)(CAR SGSR)
15650				         (LIST(LIST @CONDSTAT @(THV CGL) T))))) ))
15700	EXPR)
15750	
15800	
15850	
15900	
15950	
16000	
16050	
16100	
16150	
16200	
16250	
16300	(DEFPROP ITERATE
16350	   (LAMBDA(S)
16400		(LIST @THOR(CONS @THAND(ITB S))
16450				 T))
16500	EXPR)
16550	
16600	
16650	
16700	
16750	(DEFPROP ITB
16800	   (LAMBDA(S)
16850	      (PROG(SL LS LSG)
16900		(SETQ SL(CDR S))
16950	IT2	(SETQ LS(CONS(LIST(CAR SL))LS))
17000		(SETQ SL(CDR SL))
17050		(COND(SL(GO IT2)))
17100		(SETQ LSG(SUBGOALCOND LS NIL))
17150		(RETURN(APPEND(REJECTQUIK LS NIL)(CAR LSG)(CDR LSG)))  ))
17200	EXPR)
17250	
17300	
17350	
17400	
17450	
17500	
17550	(DEFPROP SUBGOALCOND
17600	   (LAMBDA(PRE DF)
17650	      (PROG(PC LI SW SWR SG SR LIT)
17700		(SETQ PC PRE)
17750		(COND((NULL PC)(RETURN NIL)))
17800	SU1	(SETQ SW NIL)(SETQ LI(CAAR PC))
17850		(SETQ SWR NIL)
17860		(COND((AND DF(NOT(ATOM(CAR LI))))(SETQ SG(CONS(CONS @THAND(APPEND(REJECTQUIK LI NIL)
17864								     (CSG(SUBGOALCOND LI NIL))))SG))
17868						 (GO SU7)))
17900		(COND((NOT(EQ LI @*))(GO SU15)))
17950		(SETQ SG(CONS(ITERATE(CAR PC))SG))
18000		(GO SU7)
18050	SU15	(COND((NULL(CDAR PC))(GO SU2)))
18100		(SETQ SG(CONS(DISJUN(CAR PC))SG))
18150		(GO SU7)
18200	SU2	(COND((NOT(EQ @REQUEST(CAR LI)))(GO SU21)))
18250		(SETQ SWR T)
18300		(SETQ LI(CDR LI))
18350		(COND((EQ NEGSGN(CAR(EXPLODE(CAR LI))))
18400		      (SETQ LI(APPEND(LIST NEGSGN(READLIST(CDR(EXPLODE(CAR LI)))))
18450				     (CADR LI))))
18500		     (T(SETQ LI(CONS(CAR LI)(CADR LI)))))
18550	SU21	(COND((EQ NEGSGN(CAR LI))(SETQ SW T)))
18600		(COND((AND SWR(NOT(COND(SW(GET(CADR LI)@FLUENT))
18650				       (T(GET(CAR LI)@FLUENT)))))
18700		      (SETQ SG(CONS(CAR(REJECTQUIK(LIST(LIST LI))NIL))SG))))
18750		(COND(SW(SETQ LI(CDR LI))))
18800		(COND((NOT(OR(GET(CAR LI)@SUBR)(GET(CAR LI)@EXPR)(GET(CAR LI)@FEXPR)))(GO SU23)))
18850		(SETQ SG(CONS(COND(SW(LIST @NOT(PLPRED LI T)))
18900		                  (T(PLPRED LI T)))SG))
18950		(GO SU7)
19000	SU23	(COND((NOT(GET(CAR LI)@FLUENT))(GO SU7)))
19010		(COND((EQ @=(CAR LI))(SETQ SG(CONS(LIST @THCOND(LIST(LIST @THASVAL(CADR(PLPRED LI T)))
19011						(CONS @EQUAL(CDR(PLPRED LI T))))
19012			(LIST T(LIST @THSETQ(CADR(PLPRED LI T))(CADDR(PLPRED LI T)))))SG))(GO SU7)))
19050		(COND((NOT(GET(CAR LI)@UNCERT))(GO SU3)))
19100		(SETQ SG(CONS(LIST @THCOND(LIST(THANDVAL LI)(LIST @UNCERTLIT(APPEND @(LIST)(CONS(COND(SW(LIST @QUOTE
19150										(READLIST(APPEND @(N)(EXPLODE(CAR LI))))))
19200										      (T(LIST @QUOTE(CAR LI))))
19250										 (APPEND(CDR(PLPRED LI NIL))@(@R))))
19300								  DF @X @Y))@(T T))SG))
19350		(COND((NULL DF)(SETQ SG(CONS(LIST @CONDSTAT @(THV CGL)DF)SG))))
19400		(GO SU7)
19450	SU3	(COND((AND(NOT(GET(CAR LI)@PARTIAL))SW)(GO SU11)))
19500		(COND((NOT(GET(CAR LI)@PARTIAL))
19550		      (SETQ SG(CONS(APPEND(LIST @THGOAL(APPEND(PLPRED LI NIL)@(R)))
19600				   (COND(SWR NIL)(T(LIST @(THTBF FILTEROP)))))SG))
19650		      (GO SU5)))
19700		(SETQ LIT LI)
19750		(COND(SW(SETQ LI(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))(CDR LI))))
19800	              (T(SETQ LIT(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))(CDR LI)))))
19850		(SETQ SG(CONS(LIST @THCOND(LIST(APPEND(LIST @THGOAL(APPEND(PLPRED LI NIL)@(R)))
19900						    (COND(SWR NIL)(T(LIST @(THTBF FILTEROP)))))T)
19950					(LIST(LIST @THGOAL(APPEND(PLPRED LIT NIL)@(R)))@(THFAIL))
20000					(LIST T(LIST @UNCERTLIT(APPEND @(LIST)(CONS(LIST @QUOTE(CAR LI))
20050								    (APPEND(CDR(PLPRED LI NIL))@(@R))))DF
20100						     (LIST @QUOTE(APPEND(PLPRED LI NIL)@(R)))
20150						     (LIST @QUOTE(APPEND(PLPRED LIT NIL)@(R))) )))SG))
20200		(COND((NULL DF)(SETQ SG(CONS(LIST @CONDSTAT @(THV CGL)DF)SG))))
20250	SU5	(COND((OR(GET OP @AX)SWR)(GO SU7)))
20260	        (COND((EQUAL @(C P)(LIST(CAR(EXPLODE(CAR LI)))
20265	                                (CADR(EXPLODE(CAR LI))) ))
20270	              (SETQ LI(CONS @C(CDR LI)))))
20300		(SETQ SG(CONS(LIST @THCOND(LIST(THANDVAL LI)
20350		          (LIST @THSETQ(LIST @THV(READLIST(APPEND(EXPLODE(CAR LI))(LIST @A @R @G @S))))
20400					  (LIST @CONS(CONS @LIST(CDR(PLPRED LI T)))
20450		           (LIST @THV(READLIST(APPEND(EXPLODE(CAR LI))(LIST @A @R @G @S))))  )))(LIST T T))SG))
20500		(COND(DF(SETQ SG(CONS(LIST @THAND(CADR SG)(CAR SG))(CDDR SG)))))
20550		(SETQ SR(CONS(LIST @THCOND(LIST(LIST @NULL(LIST @THV(READLIST(APPEND(EXPLODE(CAR LI))(LIST @A @R @G @S)))))
20600					       T)
20650					  (LIST T(LIST @THSETQ(LIST @THV(READLIST(APPEND(EXPLODE(CAR LI))(LIST @A @R @G @S))))
20700				   (LIST @CDR(LIST @THV(READLIST(APPEND(EXPLODE(CAR LI))(LIST @A @R @G @S)))))
20750								     T T)))SR))
20800		(COND(DF(SETQ SR(CONS(LIST @THCOND(LIST(LIST @THGOAL(APPEND(PLPRED LI NIL)(LIST @R)))
20850						       (CAR SR))(LIST T T))(CDR SR)))))
20900	SU7	(SETQ PC(CDR PC))
20950		(COND((NOT(NULL PC))(GO SU1)))
21000	SU9	(RETURN(CONS(REVERSE SG)SR))
21050	SU11	(SETQ SG(CONS(LIST @THCOND(LIST(LIST @THNOT(LIST @THGOAL(APPEND(PLPRED LI NIL)(LIST @R))))T)
21100				   (LIST T(LIST @THGOAL(APPEND(PLPRED(CONS NEGSGN LI)NIL)(LIST @R))
21150						@(THTBF FILTEROP) )))SG))
21200		(SETQ LI(CONS(READLIST(APPEND(LIST @N)(EXPLODE(CAR LI))))(CDR LI)))
21250		(GO SU5)  )) 
21300	EXPR)
21350	
21400	
21450	
21500	
21550	
21600	
21650	
21700	
21750	
21800	
21850	
21900	
21950	(DEFPROP LOOKAHEAD
22000	   (LAMBDA(OP)
22050	      (PROG(PC LI HG HA PR)
22100		(SETQ PC((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET OP @PRE)))
22150		(COND((NULL PC)(RETURN NIL)))
22200	LO1	(SETQ LI(CAAR PC))
22250		(COND((EQ LI @*)(GO LO5)))
22300		(COND((NOT(EQ @REQUEST(CAR LI)))(GO LO2)))
22350		(SETQ LI(COND((EQ NEGSGN(CAR(EXPLODE(CADR LI))))
22400			      (APPEND(LIST NEGSGN(READLIST(CDR(EXPLODE(CADR LI)))))
22450				     (CADDR LI)))
22500			     (T(CONS(CADR LI)(CADDR LI)))))
22550	LO2	(COND((EQ NEGSGN(CAR LI))(SETQ PR(CADR LI)))
22600		     (T(SETQ PR(CAR LI))))
22650		(COND((OR(NOT(GET PR @FLUENT))(AND(EQ NEGSGN(CAR LI))(NOT(GET PR @PARTIAL))))(GO LO5)))
22700		(SETQ HG(CONS(LIST @THGOAL(APPEND(PLPRED LI NIL)(LIST @H)))HG))
22750		(SETQ HA(CONS(LIST @THCOND(LIST(THANDVAL LI)(LIST @THDO(LIST @THASSERT
22800					(APPEND(PLPRED LI NIL)(LIST @H))))))HA))
22850	LO5	(SETQ PC(CDR PC))
22900		(COND((NOT(NULL PC))(GO LO1)))
22950		(SETQ HG(LIST @THCOND(LIST(CONS @THOR HG)T)(LIST T T)))
23000		(SETQ HA(CONS @THDO HA))
23050		(RETURN(LIST HG HA))  ))
23100	EXPR)
23150	
23200	
23250	
23300	
23350	(DEFPROP REJECTQUIK
23400	   (LAMBDA(PRE DSW)
23450	      (PROG(PC SW LI LIT RL EL)
23500		(SETQ PC PRE)
23550		(COND((NULL PC)(RETURN NIL)))
23600	RE1	(SETQ SW NIL)
23650		(SETQ LI(CAAR PC))
23675		(COND((NOT(ATOM(CAR LI)))(GO RE5)))
23700		(COND((EQ @REQUEST(CAR LI))(GO RE5)))
23750		(COND((EQ LI @*)(GO RE5)))
23800		(COND((EQ NEGSGN(CAR LI))(SETQ SW T)))
23850		(COND(SW(SETQ LI(CDR LI))))
23900		(COND((OR(GET(CAR LI)@SUBR)(GET(CAR LI)@EXPR)(GET(CAR LI)@FEXPR))(GO RE5)))
23950		(COND((GET(CAR LI)@FLUENT)(GO RE5)))
24000		(COND((CDAR PC)(GO RE5)))
24050		(COND((GET(CAR LI)@UNCERT)
24100		      (SETQ RL(CONS(LIST @THCOND(LIST(THANDVAL LI)
24150	 			(LIST @UNCERTLIT(APPEND @(LIST)(CONS(COND(SW(LIST @QUOTE
24200							      (READLIST(APPEND @(N)(EXPLODE(CAR LI))))))
24250							  (T(LIST @QUOTE(CAR LI))))
24300						     (CDR(PLPRED LI NIL))))DSW @X @Y))@(T T))RL))
24350		      (GO RE3)))
24400		(COND((NOT(EQ @=(CAR LI)))(GO RE2)))
24450		(SETQ EL(CONS(LIST @THCOND(LIST(APPEND(THANDVAL LI)(LIST(COND(SW(CONS @EQUAL(CDR(PLPRED LI T))))
24500									(T(LIST @NOT(CONS @EQUAL(CDR(PLPRED LI T))))))))
24550					       (LIST @THFAIL))
24600					   (LIST T T))EL))
24650		(GO RE5)
24700	RE2	(SETQ LI(PLPRED LI NIL))
24750		(COND((NOT(GET(CAR LI)@PARTIAL))
24800		      (COND(SW(SETQ RL(CONS(LIST @THNOT(LIST @THGOAL LI))RL)))
24850			   (T(SETQ RL(CONS(LIST @THGOAL LI)RL))))
24900		      (GO RE5)))
24950		(SETQ LIT LI)
25000		(COND(SW(SETQ LI(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))(CDR LI))))
25050	              (T(SETQ LIT(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))(CDR LI)))))
25100		(SETQ RL(CONS(LIST @THCOND(LIST(LIST @THGOAL LI)T)
25150					(LIST(LIST @THGOAL LIT)@(THFAIL))
25200					(LIST T(LIST @UNCERTLIT(APPEND @(LIST)(CONS(LIST @QUOTE(CAR LI))(CDR LI)))DSW
25250						    (LIST @QUOTE LI)(LIST @QUOTE LIT))))RL))
25300	RE3	(COND((NULL DSW)(SETQ RL(CONS(LIST @CONDSTAT @(THV CGL)DSW)RL))))
25350	RE5	(SETQ PC(CDR PC))
25400		(COND((NULL PC)(RETURN(APPEND(REVERSE RL)EL)))
25450		     (T(GO RE1)))  ))
25500	EXPR)
25550	
25600	
25650	
25700	
25750	(DEFPROP PLPRED
25800	   (LAMBDA(L SW)
25850	      (PROG(LL PR VL)
25900		(SETQ LL L)
25950		(SETQ PR(CAR LL))
26000		(COND((EQ NEGSGN(CAR LL))(SETQ PR(READLIST(APPEND(LIST @N)(EXPLODE(CADR LL))) )))
26050		     (T(GO PL1)))
26100		(SETQ LL(CDR LL))
26150	PL1	(SETQ LL(CDR LL))
26200	PL3	(SETQ VL(CONS(COND((AND(NOT(ATOM(CAR LL)))(NULL(CDAR LL)))(COND(SW(LIST @QUOTE(CAR LL)))
26212										(T(CAR LL))))
26225				  ((NOT(ATOM(CAR LL)))(COND(SW(FARGVAL(CAR LL)))
26250							   (T(LIST @THEV(FARGVAL(CAR LL))))) )
26300				  (T(LIST @THV(CAR LL))))VL))
26350		(SETQ LL(CDR LL))
26400		(COND((NULL LL)(RETURN(CONS PR(REVERSE VL))))
26450		     (T(GO PL3)))  ))
26500	EXPR)
26550	
26600	
26650	
26700	
26750	(DEFPROP THANDVAL
26800	   (LAMBDA(L)
26850	      (PROG(LL VL)
26900		(SETQ LL L)
26950		(COND((EQ(CAR LL)NEGSGN)(SETQ LL(CDDR LL)))
27000		     (T(SETQ LL(CDR LL))))
27050	TH1	(COND((NOT(ATOM(CAR LL)))(GO TH2)))
27100		(SETQ VL(CONS(LIST @THASVAL(LIST @THV(CAR LL)))VL))
27150	TH2	(SETQ LL(CDR LL))
27200		(COND((NULL LL)(RETURN(CONS @THAND VL)))
27250		     (T(GO TH1))) ))
27300	EXPR)
27350	
27400	
27450	
27500	
27550	
27600	
27650	
27700	(DEFPROP HYPGOAL
27750	   (LAMBDA(OP)
27800		(LIST @THCOND(LIST(THANDVAL(CAAR(GET OP @POST)))
27850				  (LIST @THDO(LIST @THERASE(APPEND(PLPRED(CAAR(GET OP @POST))NIL)(LIST @H)))))
27900		      (LIST T T)) )
27950	EXPR)
28000	
28050	
28100	
28150	(DEFPROP PATTERN
28200	   (LAMBDA(OP)
28250	      (PROG(LI SW1 SW2)
28300		(SETQ LI(CAR(LAST(CAR(GET OP @POST)))))
28350		(COND((EQ @PATTERN(CAR LI))(SETQ LI(CONS(CADR LI)(CADDR LI)))))
28400		(COND((GET(COND((EQ NEGSGN(CAR LI))(CADR LI))
28450				(T(CAR LI))) @FLUENT)(SETQ SW1 T)))
28500		(COND((OR(EQ @AXIOM OP)(EQ @DEF OP))(SETQ SW2 T)))
28550		(COND((AND(NOT SW1)(NOT SW2))(ERR @(NONFLUENT PC OF FLUENT OP))))
28600		(COND((EQ NEGSGN(CAR LI))
28650		      (RETURN(CONS(READLIST(APPEND(LIST @N)(EXPLODE(CADR LI))))
28700				  (APPEND(ARGLIST(CDDR LI))(COND(SW1(LIST @R))(T NIL)) ))))
28750		     (T(RETURN(CONS(CAR LI)(APPEND(ARGLIST(CDR LI))(COND(SW1(LIST @R))(T NIL)) ))))) ))
28800	EXPR)
28850	
28900	
28950	
29000	
29050	(DEFPROP MEMP
29100	   (LAMBDA(A B)
29150		(COND((NULL B)NIL)
29200		     ((ATOM(CAR B))(MEMP A(CDR B)))
29250		     ((EQ(CAR A)(CAAR B))T)
29300		     (T(MEMP A(CDR B)))))
29350	EXPR)
29400	
29450	
29453	(DEFPROP CDEQ
29456	   (LAMBDA(VARL)
29459		(COND((NULL VARL)NIL)
29462		     (T(CONS(CAR VARL)(CDEQ(CDEQ1(CAR VARL)(CDR VARL)))))))
29465	EXPR)
29468	
29471	
29474	(DEFPROP CDEQ1
29477	   (LAMBDA(A D)
29480		(COND((NULL D)NIL)
29483		     ((EQUAL A(CAR D))(CDEQ1 A(CDR D)))
29486		     (T(CONS(CAR D)(CDEQ1 A(CDR D))))))
29489	EXPR)
29492	
29495	
29500	
29550	
29600	
29650	
29700	
29750	
29800	(DEFPROP VARLIST
29850	   (LAMBDA(CO)
29900	      (PROG(RP CL VL VA LI SW AR ARL PL UA DA CT)
30000	VA1	(SETQ CL(CAR CO))
30050	VA3	(SETQ LI(CAR CL))
30100		(COND((EQ LI @*)(GO VA65)))
30125		(COND((NOT(ATOM(CAR LI)))(SETQ GCSW T)(SETQ VL(CDEQ(APPEND(VARLIST LI)VL)))(SETQ GCSW NIL)(GO VA6)))
30150		(COND((EQ @PATTERN(CAR LI))(SETQ LI(CONS(CADR LI)(CADDR LI))) ))
30200		(COND((NOT(EQ @REQUEST(CAR LI)))(GO VA31)))
30250		(SETQ LI(CADDR LI))
30300		(GO VA4)
30350	VA31	(SETQ LI(COND((EQ NEGSGN(CAR LI))(CDDR LI))
30400			     (T(CDR LI))))
30450		(COND((OR(GET(CAR LI)@SUBR)(GET(CAR LI)@EXPR))(GO VA65)))
30500	VA4	(COND((NOT SW)(SETQ AR LI)))
30550	VA5	(SETQ VA(CAR LI))
30560		(COND((AND(NOT(ATOM VA))(NUMBERP(CAR VA)))(GO VA6)))
30600		(COND((AND(NOT(ATOM VA))(NOT(OR(EQ(CAR VA)@EVN)(EQ(CAR VA)@EV)(GET(CAR VA)@SUBR)
30650					       (GET(CAR VA)@EXPR)))(NOT(MEMP VA VL)))
30700		      (GO VA6)))
30750		(COND((AND(ATOM VA)(NOT(MEMQ VA VL)))(SETQ VL(CONS VA VL))))
30800		(SETQ SW T)
30850	VA6	(SETQ LI(CDR LI))
30900		(COND(LI(GO VA5)))
30950	VA65	(SETQ CL(CDR CL))
31000		(COND(CL(GO VA3)))
31050		(SETQ CO(CDR CO))
31100		(COND(CO(GO VA1)))
31150		(COND(GCSW(RETURN VL)))
31200		(SETQ CT 0)
31250		(SETQ PL(GET OP @POST))
31275		(COND((AND(GET OP @ITER)(NOT(GET OP @OA)))(RETURN VL))
31285		     ((GET OP @OA)(SETQ PL(GET OP @OA))))
31300	VA7	(SETQ RP(REVERSE(CAR PL)))
31350		(SETQ UA(GET(COND((EQ NEGSGN(CAAR RP))(CADAR RP))
31400				 (T(CAAR RP)))@UNIQ)) 
31450		(COND((NULL UA)(GO VA11)))
31500	VA9	(COND((EQ(CAR UA)@*)(SETQ DA(CONS(READLIST(LIST @D(SETQ CT(ADD1 CT))))DA))))
31550		(SETQ UA(CDR UA))
31600		(COND(UA(GO VA9)))
31650	VA11	(SETQ PL(CDR PL))
31700		(COND(PL(GO VA7)))
31750		(SETQ DL DA)
31800		(SETQ VL(APPEND VL DA))
31850	VA13	(COND((ATOM(CAR AR))(SETQ ARL(CONS(CAR AR)ARL)))
31900		     (T(SETQ ARL(CONS(CAAR AR)ARL))))
31950		(SETQ AR(CDR AR))
32000		(COND(AR(GO VA13)))
32025		(COND((GET OP @ITER)(RETURN VL)))
32050		(SETQ PVARLIST VL)
32100		(RETURN(APPEND VL(LIST(LIST (READLIST(APPEND(LIST @L @S @T)(EXPLODE OP)))(LIST @QUOTE ARL)))))  ))
32150	EXPR)
32200	
32250	
32300	
32350	
32400	
32450	
32500	(DEFPROP CSG
32550	   (LAMBDA(GR)
32560	      (PROG(TE)
32570		(COND((NULL GR)(RETURN NIL)))
32600		(SETQ TE(APPEND(CAR GR)(CDR GR)SRG))
32610		(SETQ SRG NIL)
32620		(RETURN TE)  ))
32650	EXPR)
32700	
32750	
32800	
32850	
32900	
32950	
33000	
33050	
33100	
33150	(DEFPROP DLAST
33200	   (LAMBDA(L LN)
33250		(COND((NULL(CDR LN))(READLIST(REVERSE L)))
33300		     (T(DLAST(CONS(CAR LN)L)(CDR LN)))))
33350	EXPR)
33400	
33450	
33500	
33510	(DEFPROP CONTRLTRACE
33512	   (LAMBDA(GL)
33514		(COND((NULL GL)NIL)
33516		     (T(CONS(LIST @THCOND(LIST(LIST @AND @(THV WF)(LIST @THASVAL(CAR GL))
33518				    (LIST @NOT(LIST @ATOM(CAR GL)))
33520				    (LIST @NOT(LIST @EQ @@#(LIST @CAR(CAR GL)))))
33522					      (LIST @THSETQ(CAR GL)
33524				    (LIST @LIST @@#(LIST @LIST(LIST @QUOTE(CADAR GL))@(THV LCTR))(CAR GL))))
33526					 @(T T))(CONTRLTRACE(CDR GL)))))  )
33528	EXPR)
33530	
33532	
33534	
33550	
33600	(DEFPROP SEMOP
33650	   (LAMBDA(F)
33700	      (PROG(TH GCSW FL OP AR DL AL SRG G UPTHM REDUNER REDUNAS)
33750		(SETQ FL F)
33800	SE1	(SETQ OP(CAR FL))
33850		(SETQ UPTHM NIL)
33900		(SETQ SRG NIL)
33950		(SETQ AL(CONS OP AL))
34000		(SETQ AR(GET OP @ARG))
34050		(TERPRI)(TERPRI)
34100		(PRINT(LIST @SETQ(READLIST(APPEND @(R T)(EXPLODE OP)))NIL))
34150		(PRINT(LIST @SETQ(READLIST(APPEND @(R F)(EXPLODE OP)))NIL))
34200		(TERPRI)
34250		(COND((GET OP @ITER)(SETQ TH(ITERDEF))(GO SE2)))
34300		(SETQ TH(LIST @DEFPROP OP
34350			    (APPEND(LIST @THCONSE)
34400				   (LIST(CONS @CGL(VARLIST(APPEND(GET OP @POST)((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))
34450											(GET OP @PRE))) )))
34500				   (LIST(SETQ G(PATTERN OP)))
34525		                    @((THSETQ(THV LCTR)(THV GCTR)))
34530				    (COND(BTSW(CONTRLTRACE(CDR(REVERSE(CDR(REVERSE G))))))(T NIL))
34550				   (COND(STAT(LIST @(SETQ THME(ADD1 THME))))
34600					(T NIL))
34650				   (COND((GET OP @REC)NIL)
34700				        (T(LIST(LIST @THUNIQUE (READLIST(APPEND(LIST @L @S @T)(EXPLODE OP))))) ))
34750				   (LIST(LIST @TREEPATH OP G))
34800	                           (COND((GET OP @ASSUM)(LIST(LIST @STEPREF (LIST @QUOTE OP)
34803	                                                                    (CONS @LIST(FARGLIST(GET OP @ARG)))
34806	                                                                   (APPEND @(LIST)(LIST(LIST @QUOTE(CAR G)))
34807									   (REVERSE(CDR(REVERSE(CDR G))))) )))
34809	                                (T NIL))
34850				   (COND(TRACESW(LIST @(TRACEINFO1)(LIST @THOR T(LIST @TRACEINFO2 OP))))
34900					(T NIL))
34950				   (LIST(LIST @COND(LIST(LIST @TTYIN)(LIST @ADVICESYS))@(T T)))
35000				   (COND(LOOK(LIST(HYPGOAL OP)))(T NIL))
35050				   (REJECTQUIK((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET OP @PRE))NIL)
35100				   (COND(LOOK(LOOKAHEAD OP))
35150					(T NIL))
35200				   (CSG(SUBGOALCOND((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET OP @PRE))NIL))
35250				   (COND(AR(INEQARG OP))
35300					(T NIL))
35350				   (COND((AND AR(CDAR(GET OP @POST)))@((SAVESTATE @CURSTATE)))
35400					(T NIL))
35450				   (COND(AR(SETQ REDUNER NIL)(ERASECOND (GET OP @POST)))
35500					(T NIL))
35550				   (COND(AR(LIST(LIST @THSET @(CAR(THV ANS))(LIST @CONS(LIST @CONS
35600						            (COND((NUMBERP(CAR(LAST(EXPLODE OP))))
35650								  (LIST @QUOTE(DLAST NIL(EXPLODE OP))))	
35675	                                                         ((GET OP @ASSUM)
35680	                                                     (LIST @READLIST(LIST @APPEND(LIST @EXPLODE(LIST @QUOTE OP))@(EXPLODE PN))))
35700								(T (LIST @QUOTE OP)))
35750						(CONS @LIST(FARGLIST(GET OP @ARG))))@(EVAL(CAR(THV ANS)))))))
35800					(T NIL))
36150				   (LIST @(THSETQ(THV DBLITS)(CONS(CDAR CT)(THV DBLITS))))
36200				   (COND(STAT(LIST @(SETQ THMS(ADD1 THMS))))
36250					(T NIL))
36300				   (COND(AR(SETQ REDUNAS NIL)(ASSERTCOND(REVERSE(GET OP @POST))))
36350					(T NIL))  
36400				   (COND((AND AR(CDAR(GET OP @POST)))(CDISPOST(REVERSE(GET OP @POST))))
36450					(T NIL))
36460				   (COND(AR(APPEND(COND(TRACESW(LIST(LIST @PRINT(LIST @REVERSE @(EVAL(CAR(THV ANS)))))))
36466						       (T NIL))
36472				    		  (LIST(LIST @SETQ @GANS(LIST @REVERSE @(EVAL(CAR(THV ANS))))))
36478				             (LIST @(COND((*GREAT(LENGTH GANS)(LENGTH LGANS))(SETQ LGANS GANS))(T T)))
36484				   		  (LIST(LIST @THDO(LIST @TERPRI)))))
36490					(T NIL))
36500				   (LIST @(COND((EQ @IF(CADAR CT))(ELSECLAUSE))
36550					       (T(THSETQ CT(CDR CT)T T))))  )
36600			    @THEOREM)   )
36650	SE2	(SPRINT TH 2 1)
36700		(COND(UPTHM(TERPRI)(SPRINT UPTHM 2 1)(PRINT(LIST @THASSERT(READLIST(APPEND @(T U P)(EXPLODE OP)))))))
36750		(SETQ FL(CDR FL))
36800		(COND(FL(GO SE1)))
36850	SE3	(TERPRI)(TERPRI)
36900		(PRINT(LIST @THASSERT(CAR AL)))
36950		(SETQ AL(CDR AL))
37000		(COND(AL(GO SE3))
37050		     (T(RETURN T)))   ))
37100	EXPR)
37150	
37200	
37250	(DEFPROP ITERDEF
37300	   (LAMBDA NIL   
37350	      (PROG(CCL INVS IBAL IVAL IGAL)
37500		(RETURN
37550		   (LIST @DEFPROP OP
37600		      (APPEND(LIST @THCONSE)
37650			(LIST(APPEND(VARLIST(APPEND(GET OP @IBAS)(GET OP @INVAR)(GET OP @ISTEP)(GET OP @IG)))
37800				    @(FT NT CGL LCTR LWF LUF PS PB BP SASSERTLITS INVAR1 INVAR2 CTST)))
37850			(LIST(SETQ G(CONS(CAAR(LAST(CAR(GET OP @IG))))
37900					 (APPEND(ARGLIST(CDAR(LAST(CAR(GET OP @IG)))))@(R)))))
37950			(LIST @(THSETQ(THV LCTR)(THV GCTR)))
37975			(COND(BTSW(CONTRLTRACE(CDR(REVERSE(CDR(REVERSE G))))))(T NIL))
38000			(COND(STAT(LIST @(SETQ THME(ADD1 THME))))(T NIL))
38050			(LIST(LIST @TREEPATH OP G))
38100			(COND((GET OP @ASSUM)(LIST(LIST @THSETQ @(THV ASSL)
38150							(LIST @CONS(LIST @QUOTE OP)@(THV ASSL))))))
38200			(COND(TRACESW(LIST @(TRACEINFO1)(LIST @THOR T(LIST @TRACEINFO2 OP))))
38250			     (T NIL))
38300			(LIST(LIST @COND(LIST(LIST @TTYIN)(LIST @ADVICESYS))@(T T)))
38350			@((THSETQ(THV LWF)NIL T T)
38400			  (THCOND((NOT(THV WF))(THSETQ(THV LWF)T))(T T))
38450			  (THSETQ(THV WF)T)
38500			  (THSETQ(THV LUF)NIL T T)
38550			  (THSETQ(THV PS)(EVAL(CAR(THV ANS)))T T)
38600			  (THSET(CAR(THV ANS))NIL))
38700			(REJECTQUIK((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET OP @IBAS))NIL)
38750			(CSG(SUBGOALCOND((LAMBDA(Y)(COND((EQ Y T)NIL)(T Y)))(GET OP @IBAS))NIL))
38800			@((THSETQ(THV BP)(EVAL(CAR(THV ANS)))T T)
38850			  (THSET(CAR(THV ANS))NIL))
38900			(COND((NOT(GET OP @OA))
38950			      @((THCOND((THV UF)(THSETQ(THV PB)NIL T T)(THGO UP1))(T T))))
39000			     (T NIL))
39050			@((THOR T(THFAIL THEOREM)))
39060			@(REP)
39100			(SETQ INVS(GENINVAR(GET OP @INVAR)NIL))
39125			(LIST(LIST @THSETQ @(THV INVAR1)(CONS @LIST CCL)T T))
39127			(LIST(LIST @THSETQ @(THV CTST)
39130			   (CONS @LIST(CONS(LIST @QUOTE(CAAAR(GET OP @ICT)))(CDR(PLPRED(CAAR(GET OP @ICT))T))))))
39200			@((THOR T(THFAIL THEOREM)))
39310			@((THSETQ(THV SASSERTLITS)(THV ASSERTLITS)T T))
39325			(REJECTQUIK(GET OP @ISTEP)NIL)
39350			(CSG(SUBGOALCOND(GET OP @ISTEP)NIL))
39360			(RESETCHNGVARS IVAL)
39400			INVS
39420			(DEFUNDEF IVAL)
39450			@((THSETQ(THV PB)(EVAL(CAR(THV ANS)))T T))
39500			(LIST(LIST @THSETQ @(THV INVAR2)(CONS @LIST CCL)T T))
39510			@((THCOND((THASVAL(THV FT))(THSETQ(THV NT)(COMPCHANGES(THV INVAR1)(THV INVAR2)
39513								     (INCRELIT(THV SASSERTLITS)(REVERSE(THV ASSERTLITS))))))
39516				 (T(THSETQ(THV FT)(COMPCHANGES(THV INVAR1)(THV INVAR2)
39519							(INCRELIT(THV SASSERTLITS)(REVERSE(THV ASSERTLITS)))))))  )
39522			(LIST(LIST @THCOND(APPEND(LIST(LIST @AND(LIST @NOT @(THASVAL(THV NT)))(LIST @AMBIG @(THV FT))))
39528				    (RESETCHNGVARS IVAL)  
39531				    @((THSET(CAR (THV ANS))NIL)
39534				      (THGO REP) ) )
39537					@(T T)  ))
39550		(LIST(LIST @SETQ @GTEMP (LIST @WHILASSEM @(THV BP) @(THV PB)@(COND((THASVAL(THV NT))(THV NT))
39560											(T(THV FT)))
39575					@(THV CTST))))
39590			@((THSETQ(THV PB)GTEMP T T))
39650			(COND((GET OP @OA)(IASSERTUP(GET OP @OA)))
39700			     (T(UNWINDUP)))
39750			@((SETQ GANS(REVERSE(EVAL(CAR(THV ANS)))))
39800			  (THCOND((THV LWF)(THSETQ(THV WF)NIL T T)
39850					   (THSETQ(THV BT)NIL T T)
39900					   (SETQ GANS(REMBT GANS)))(T T))
39940			  (THSETQ(THV DBLITS)(CONS(CDAR CT)(THV DBLITS)))
39950			  (THCOND((THV LUF)(THSETQ(THV UF)NIL T T)(THSETQ(THV ULS)T))(T T)))
39952			(LIST(LIST @THCOND(LIST @(THV ULS)(LIST @THSETQ @(THV ASSERTLITS)(LIST @CONS(LIST @LIST(APPEND @(LIST)
39954	(LIST(LIST @QUOTE(CAR(PLPRED(CAR(LAST(CAR(GET OP @IG))))NIL))))(CDR(PLPRED(CAR(LAST(CAR(GET OP @IG))))T))@(@R))
39956	(CONS @LIST(UNEVALARG(CDR(CAR(LAST(CAR(GET OP @IG)))))))) @(THV ASSERTLITS))) )(LIST T (LIST @THSETQ @(THV WASSERTLITS)
39957	(LIST @CONS(LIST @LIST(APPEND @(LIST)(LIST(LIST @QUOTE(CAR(PLPRED(CAR(LAST(CAR(GET OP @IG))))NIL))))
39958	(CDR(PLPRED(CAR(LAST(CAR(GET OP @IG))))T))@(@R))(CONS @LIST(UNEVALARG(CDR(CAR(LAST(CAR(GET OP @IG))))))))
39959	@(THV WASSERTLITS))) )))
39960			  @((COND((EQ(QUOTE IF)(CADAR CT))(ELSECLAUSE))(T(THSETQ CT(CDR CT)T T)))  ))
40000		      @THEOREM))   ))
40050	EXPR)
40100	
40150	
40200	(DEFPROP GENINVAR
40250	   (LAMBDA(CL DSW)
40300	      (PROG(LI SG SW LIT LICCL SIVAL SCCL)
40350		(COND((NULL CL)(RETURN NIL)))
40355		(SETQ CCL NIL)
40375		(SETQ IBAL(VARLIST(GET OP @IBAS)))
40380		(SETQ IVAL(VARLIST CL))
40390		(SETQ IGAL(VARLIST(GET OP @IG)))
40400	GE1	(SETQ SW NIL)
40450		(SETQ LI(CAAR CL))
40500		(COND((CDAR CL)(SETQ SIVAL IVAL)(SETQ SCCL CCL)(SETQ SG(CONS(IDISJUN(CAR CL))SG))
40525			       (SETQ IVAL SIVAL)(SETQ CCL(CONS(CAR(REVERSE CCL))SCCL))(GO GE7)))
40550		(COND((EQ NEGSGN(CAR LI))(SETQ SW T)(SETQ LI(CDR LI))))
40560		(SETQ LICCL(PLPRED LI T))
40600		(SETQ LI(PLPRED LI NIL))
40650		(COND((AND(NOT SW)(NOT(GET(CAR LI)@PARTIAL)))
40700		      (SETQ SG(CONS(LIST @THGOAL(APPEND LI(COND((GET(CAR LI)@FLUENT)@(R))(T NIL)))@(THTBF FILTERAX))SG))
40850		(SETQ CCL(CONS(LIST @SIMPLE(APPEND @(LIST)(LIST(CONS @QUOTE(LIST(CAR LI))))
40900				      (APPEND(CDR LICCL)(COND((GET(CAR LI)@FLUENT)@(@R))(T NIL)))))CCL))
40950		(GO GE7))
41000		((NOT(GET(CAR LI)@PARTIAL))
41050		      (SETQ SG(CONS(LIST @THNOT(LIST @THGOAL(APPEND LI
41100					(COND((GET(CAR LI)@FLUENT)@(R))(T NIL)))@(THTBF FILTERAX)))SG))
41250	(SETQ CCL(CONS(LIST @SIMPLE(APPEND @(LIST)(LIST(LIST @QUOTE NEGSGN)(LIST @QUOTE(CAR LI)))(APPEND(CDR LI)
41275										(COND((GET(CAR LI)@FLUENT)@(@R))(T NIL)))
41287	))CCL))
41300		(GO GE7)))
41350		(SETQ LI(APPEND LI(COND((GET(CAR LI)@FLUENT)@(R))(T NIL))))
41400		(SETQ LIT LI)
41450		(COND(SW(SETQ LI(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))
41500				     (CDR LI))))
41550		     (T(SETQ LIT(CONS(READLIST(APPEND @(N)(EXPLODE(CAR LI))))(CDR LI)))))
41600		(SETQ SG(CONS(LIST @THCOND(LIST(LIST @THGOAL LI)T)
41650					(LIST(LIST @THGOAL LIT)@(THFAIL))
41700					(LIST T(LIST @UNCERTLIT(APPEND @(LIST)
41750				(CONS(LIST @QUOTE(CAR LI))(CDR LI)))DSW
41800					(LIST @QUOTE LI)(LIST @QUOTE LIT))))SG))
41850		(COND((NULL DSW)(SETQ SG(CONS(LIST @CONDSTAT @(THV CGL)DSW)SG))))
41900	GE7	(SETQ CL(CDR CL))
41950		(COND(CL(GO GE1)))
42000		(RETURN(REVERSE SG))    ))
42050	EXPR)
42100	
42103	
42106	
42109	(DEFPROP RESETCHNGVARS
42112	   (LAMBDA(IV)
42115		(COND((NULL IV)NIL)
42118		     ((AND(OR(EQUAL IBAL IVAL)(NOT(ATOM(CAR IV)))(MEMBER(CAR IV)IBAL)(MEMBER(CAR IV)IGAL))
42119		          (OR(NOT(EQUAL IBAL IVAL))(NOT(ATOM(CAR IV)))(NOT(OR(MEMBER(CAR IV)IBAL)
42120									     (MEMBER(CAR IV)IGAL)))))(RESETCHNGVARS(CDR IV)))
42121		     (T(CONS(LIST @THSETQ(LIST @THV(CAR IV))@(QUOTE THUNASSIGNED))
42124			    (RESETCHNGVARS(CDR IV))))))
42127	EXPR)
42130	
42133	
42136	(DEFPROP DEFUNDEF
42139	   (LAMBDA(IV)
42142		(COND((NULL IV)NIL)
42145		     ((OR(NOT(ATOM(CAR IV)))(MEMBER(CAR IV)IBAL))
42148		      (DEFUNDEF(CDR IV)))
42151		     (T(CONS(LIST @THCOND(LIST(LIST @NOT(LIST @THASVAL(LIST @THV(CAR IV))))
42154	      (LIST @THSETQ(LIST @THV(CAR IV))@@##))@(T T))
42157			    (DEFUNDEF(CDR IV))))))
42160	EXPR)
42163	
42166	
42200	(DEFPROP IDISJUN
42250	   (LAMBDA(C)
42300	     (PROG(SGD TP TP1)
42350		(SETQ TP C)
42400	ID2	(SETQ TP1(CONS(LIST(CAR TP))TP1))
42450		(SETQ TP(CDR TP))
42500		(COND(TP(GO ID2)))
42550		(SETQ SGD(GENINVAR TP1 T))
42600		(RETURN(CONS @THOR(APPEND SGD(LIST(LIST @CONDSTAT @(THV CGL)T)))))  ))
42650	EXPR)
42700	
44120	
44122	
44124	(DEFPROP IASSERTUP
44126	   (LAMBDA(OA)
44128	      (PROG(LOA UNP U)
44130		(SETQ LOA(PLPRED(CAAR OA)T))
44132		(SETQ UNP(GET(CAR LOA)@UNIQ))
44133		(SETQ REDUNAS NIL)
44134		(COND((NULL UNP)(RETURN(APPEND @((THSET(CAR(THV ANS))(APPEND(THV PB)(THV PS))))
44136						  (ASSERTCOND(GET OP @OA))))))
44148		(SETQ U(LIST(LIST @THSETQ @(THV PLANL)(LIST @CONS(LIST @LIST(CONS @LIST
44150					(GIFUN LOA)) @(THV PB)) @(THV PLANL)))
44152			    (LIST @THCOND(LIST @(THV LWF)@(THSET(CAR(THV ANS))(APPEND(THV PB)(THV PS))))
44154					 (LIST T(LIST @THSET @(CAR(THV ANS))(LIST @APPEND
44156	 				    (LIST @LIST(CONS @LIST(CONS @@←(CDR LOA)))))))))
44158					(LIST T @(THSET(CAR(THV ANS))(APPEND(THV PB)(THV PS)))))
44160		(RETURN(APPEND U(ERASECOND(GET OP @OA))(ASSERTCOND(GET OP @OA))(COND((CDAR(GET OP @OA))
44161										     (CDISPOST(REVERSE(GET OP @OA)))))))    ))
44162	EXPR)
44164	
44166	
44168	
44170	(DEFPROP GIFUN
44172	   (LAMBDA(LOA)
44174	      (PROG(FF RS)
44176	GI2	(COND((NULL LOA)(RETURN(APPEND FF(REVERSE RS))))
44178		     ((EQ(CAAR LOA)@THV)(SETQ RS(CONS(CAR LOA)RS)))
44180		     ((EQ(CAAR LOA)@LIST)(SETQ FF(LIST(CADAR LOA)))
44182					 (SETQ RS(APPEND(REVERSE(GIFUN(CDDAR LOA)))RS)) ))
44184		(SETQ LOA(CDR LOA))
44186		(GO GI2)   ))
44188	EXPR)
44190	
44192	
44194	
44196	(DEFPROP SUBSTPOS
44198	   (LAMBDA(C TE E)
44200		(COND((NULL TE)NIL)
44202		     ((EQ @*(CAR TE))(CONS C(CDR E)))
44204		     (T(CONS(CAR E)(SUBSTPOS C(CDR TE)(CDR E))))))
44206	EXPR)
44208	
44210	
44212	
44214	
44216	(DEFPROP UNWINDUP
44218	   (LAMBDA NIL
44220	      (PROG NIL
44222		(SETQ UPTHM(LIST @DEFPROP(READLIST(APPEND @(T U P)(EXPLODE OP)))
44224			  (APPEND @(THCONSE)
44226				 (LIST(VARLIST(APPEND(GET OP @INVAR)(GET OP @ISTEP))))
44228				(LIST(LIST(READLIST(APPEND @(U P)(EXPLODE OP)))))
44230				(GENINVAR(GET OP @INVAR)NIL)
44232				(CSG(SUBGOALCOND(GET OP @ISTEP)NIL)))
44234			@THEOREM))
44236		(RETURN(APPEND @((THSETQ(THV UF)T) (THSETQ(THV LUF)T) UP1(THSETQ(THV ULS)NIL T T))	
44242			(LIST(LIST @THCOND(LIST(LIST @THNOT(LIST @THGOAL(APPEND(PLPRED(CAAR(GET OP @IG))NIL)@(R))@(THTBF FILTERAX)))
44244					       (LIST @THGOAL(LIST(READLIST(APPEND @(U P)
44246								     (EXPLODE OP))))@(THTBF THTRUE)))
44248					  (LIST T @(THGO UP2)))
44250				  @(THGO UP1) @UP2
44252			@(THSET(CAR(THV ANS))(APPEND(THV PB)(THV PS)))) ))))
44260	EXPR)
44261	
44262	(DEFPROP PREDARG#
44263	   (LAMBDA(PL)
44264		(COND((NULL PL)NIL)
44266		     ((EQ(LENGTH(CDAR PL))1)
44268		      (COND((GET(CAAR PL)@FLUENT)(SETQ P2A(CONS(CAAR PL)P2A))
44270						 (PREDARG#(CDR PL)))
44272			   (T(SETQ P1A(CONS(CAAR PL)P1A))(PREDARG#(CDR PL)))))
44274		     ((EQ(LENGTH(CDAR PL))2)
44276		      (COND((GET(CAAR PL)@FLUENT)(SETQ P3A(CONS(CAAR PL)P3A))
44278						 (PREDARG#(CDR PL)))
44280			   (T(SETQ P2A(CONS(CAAR PL)P2A))(PREDARG#(CDR PL)))))
44282		     ((EQ(LENGTH(CDAR PL))3)
44284		      (COND((GET(CAAR PL)@FLUENT)(SETQ P4A(CONS(CAAR PL)P4A))
44286						 (PREDARG#(CDR PL)))
44288			   (T(SETQ P3A(CONS(CAAR PL)P3A))(PREDARG#(CDR PL)))))
44290		     ((EQ(LENGTH(CDAR PL))4)
44292		      (COND((GET(CAAR PL)@FLUENT)(SETQ P5A(CONS(CAAR PL)P5A))
44294						 (PREDARG#(CDR PL)))
44296			   (T(SETQ P4A(CONS(CAAR PL)P4A))(PREDARG#(CDR PL)))))))
44298	EXPR)
44299	
44300	
44350	
44400	(DEFPROP IMODEL
44450	   (LAMBDA(I)
44500	      (PROG(IM NPR PR AR PS)
44550		(SETQ IM I)
44600	IM1	(COND((NULL IM)(RETURN PS)))
44650		(COND((EQ NEGSGN(CAAAR IM))(GO IM4)))
44700		(COND((GET(CAAAR IM)@FLUENT)(GO IM2)))
44750		(PRINT(LIST @THASSERT(CAAR IM)))
44800		(GO IM6)
44850	IM2	(PRINT(LIST @THASSERT(APPEND(CAAR IM)(LIST @R))))
44900		(COND(LOOK(PRINT(LIST @THASSERT(APPEND(CAAR IM)(LIST @H))))))
44950		(GO IM6)
45000	IM4	(SETQ PR(CADAAR IM))
45050		(COND((NOT(GET PR @PARTIAL))(GO IM6)))
45100		(SETQ NPR(READLIST(APPEND(LIST @N)(EXPLODE PR))))
45150		(SETQ AR(CDDAAR IM))
45200		(SETQ PS(CONS(CONS NPR AR)PS))
45250		(COND((GET PR @FLUENT)(GO IM5)))
45300		(PRINT(LIST @THASSERT(CONS NPR AR)))
45350		(PUTPROP NPR(GET PR @FLUENT)@FLUENT)
45400		(PUTPROP NPR(GET PR @PARTIAL)@PARTIAL)
45450		(PUTPROP NPR(GET PR @UNIQ)@UNIQ)
45500		(PUTPROP NPR(GET PR @INDEP)@INDEP)
45550		(GO IM6)
45600	IM5	(PRINT(LIST @THASSERT(APPEND(CONS NPR AR)(LIST @R))))
45650	        (COND(LOOK(PRINT(LIST @THASSERT(APPEND(CONS NPR AR)(LIST @H))))))
45700	IM6	(SETQ IM(CDR IM))
45750		(GO IM1)       ))
45800	EXPR)
45850	
45900	
45950	
46000	(DEFPROP GETCLAUSES
46050	   (LAMBDA NIL
46100	      (PROG(PR PR1 CL CLL FF)
46150	GE0	(SETQ CL NIL)
46200	GE1	(SETQ PR NIL)
46250	GE2	(SETQ PR1(READ))
46275		(COND((EQ PR1 @{)(SETQ CL(CONS(GETCLAUSES)CL))(GO GE1)))
46300		(COND((AND(NULL FF)(EQ PR1 T))(RETURN T))((AND(NULL FF)(EQ PR1 NIL))(RETURN NIL)))
46350		(SETQ FF T)
46400		(COND((NOT(ATOM PR1))(GO GE6))
46450		     ((OR(EQ @;; PR1)(EQ @;} PR1))(RETURN(REVERSE(CONS CL CLL)))))
46500		(SETQ PR1(EXPLODE PR1))
46550		(COND((EQ(CAR PR1)@α)(SETQ PR1(CDR PR1))))
46600		(COND((NULL PR1)(GO GE2)))
46650		(COND((NOT(EQ(CAR PR1)@β))(GO GE25)))
46700		(SETQ CL(CONS @* CL))
46750		(SETQ PR1(CDR PR1))
46800		(COND((NULL PR1)(GO GE2)))
46850	GE25	(COND((EQ @; (CAR PR1))(GO GE7)))
46900	GE3	(COND((EQ NEGSGN(CAR PR1))(GO GE5)))
46950	GE4	(SETQ PR(CONS(READLIST PR1)PR))
47000		(GO GE2)
47050	GE5	(SETQ PR(CONS NEGSGN PR))
47100		(SETQ PR1(CDR PR1))
47150		(COND((NULL PR1)(GO GE2))
47200		     (T(GO GE4)))
47250	GE6	(SETQ CL(CONS(NCONC(REVERSE PR)PR1)CL))
47300		(GO GE1)
47350	GE7	(SETQ PR1(CDR PR1))
47400		(SETQ CLL(CONS CL CLL))
47450		(COND((NULL PR1)(GO GE0)))
47500		(SETQ CL NIL)
47550		(SETQ PR NIL)
47600		(COND((NOT(EQ(CAR PR1)@α))(GO GE3)))
47650		(SETQ PR1(CDR PR1))
47700		(COND((NULL PR1)(GO GE0))
47750		     (T(GO GE3)))
47800	))EXPR)
47850	
47900	
47950	
48000	(DEFPROP PORDER
48050	   (LAMBDA(FL PO)
48100	      (PROG(ISW RN LPO)
48150		(SETQ RN(LENGTH FL))
48200	PO2	(COND((ZEROP RN)(RETURN NIL)))
48250		(SETQ ISW NIL)  (SETQ LPO PO)
48300	PO4	(COND((BADORDER(CAR LPO)FL)
48350		      (SETQ ISW T) (SETQ FL(INTERC FL(CAAR LPO)(CADAR LPO)))))
48400		(SETQ LPO(CDR LPO))
48450		(COND(LPO(GO PO4))
48500		     ((NULL ISW)(RETURN FL)))
48550		(SETQ RN(SUB1 RN))
48600		(GO PO2)   ))
48650	EXPR)
48700	
48750	
48800	(DEFPROP INTERC
48850	   (LAMBDA(FL R1 R2)
48900		(COND((EQ(CAR FL)R2)(CONS R1(INTERC(CDR FL)R1 R2)))
48950		     ((EQ(CAR FL)R1)(CONS R2(CDR FL)))
49000		     (T(CONS(CAR FL)(INTERC(CDR FL)R1 R2))))  )
49050	EXPR)
49100	
49150	
49200	(DEFPROP BADORDER
49250	   (LAMBDA(ALPO FL)
49300		(COND((NULL FL)NIL)
49350		     ((EQ(CAR FL)(CADR ALPO))
49400		      (COND((MEMBER(CAR ALPO)(CDR FL))T)
49450		           (T NIL)))
49500		     ((EQ(CAR FL)(CAR ALPO))NIL)
49550		     (T(BADORDER ALPO(CDR FL))))  )
49600	EXPR)
49650	
49700	
49750	
49800	
49850	
49900	
49950	(DEFPROP COMP
50000	   (LAMBDA (L)
50050	      (PROG(LOOK TSW TRACESW SI P PP ID ID1 FUN FUNLIST TEMP PO SRULES LS RS
50100		    FUNARG INITIAL DEVNAME PREDLISTS PROPL UT BTSW)
50150		(COND((NULL L)(GO SU2)))
50200		(EVAL(CONS @INPUT L))
50250		(INC T)
50300		(SETQ ID T)
50350	SU2	(PRINT @******_SEMANTIC_FRAME_DEFINITION_******)
50400		(TERPRI)
50450	SU4	(PRINT @RULE_TYPE*)
50500		(SETQ TSW(READ))
50550		(COND(ID(PRINC TSW)))
50600		(SETQ FUNARG NIL)
50650		(COND((NULL TSW)(GO SU6)))
50700		(PRINT @RULE_NAME*)
50750		(SETQ FUN(READ))
50800		(COND((OR(EQ TSW @OP)(EQ TSW @OPERATOR))(SETQ FUNARG(READ))(PUTPROP FUN T @OP)
50850	                                                                   (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)T @@OP)PROPL)))
50900		     ((OR(EQ TSW @AX)(EQ TSW @AXIOM))(PUTPROP FUN T @AX)(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)T @@AX)PROPL)))
50950		     ((EQ TSW @ITERATIVE)(PUTPROP FUN T @ITER)(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)T @@ITER)PROPL)))
51000		     (T(PUTPROP FUN T @DEF)(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)T @@DEF)PROPL))))
51050		(SETQ FUNLIST(CONS FUN FUNLIST))
51100		(COND(ID(PRINC(CONS FUN FUNARG))))
51150		(PUTPROP FUN FUNARG @ARG) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)(LIST @QUOTE FUNARG)@@ARG)PROPL))
51200		(PRINT @IS_THIS_AN_ASSUMPTION?*)
51250		(PUTPROP FUN(READ)@ASSUM) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)(LIST @QUOTE(GET FUN @ASSUM))@@ASSUM)PROPL))
51300		(COND(ID(PRINC(GET FUN @ASSUM))))
51350		(PRINT @IS_OPERATOR_DIRECTLY_RECURSIVE?)
51400		(PRINC @*)
51450		(PUTPROP FUN(READ)@REC) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)(LIST @QUOTE(GET FUN @REC))@@REC)PROPL))
51500		(COND(ID(PRINC(GET FUN @REC))))
51550		(PRINT @INEQUALITY_IN_ARGUMENT_POSITIONS?)
51600		(PRINC @*)
51650		(PUTPROP FUN(READ)@INEQ) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE FUN)(LIST @QUOTE(GET FUN @INEQ))@@INEQ)PROPL))
51700		(COND(ID(PRINC(GET FUN @INEQ))))
51750		(COND((EQ TSW @ITERATIVE)(GO SU5)))
51800		(PRINT @PRECONDITIONS_OF_OPERATOR:)
51850		(PRINT @*)
51900		(PUTPROP FUN(GETCLAUSES)@PRE)
51950		(COND(ID(PRINC(GET FUN @PRE))))
52000		(PRINT @POSTCONDITIONS_OF_OPERATOR:)
52050		(PRINT @*)
52100		(PUTPROP FUN(GETCLAUSES)@POST) 
52150		(COND(ID(PRINC(GET FUN @POST))))
52200		(TERPRI)
52250		(GO SU4)
52300	SU5	(PRINT @BASIS_CONDITION:)(PRINT @*)
52350		(PUTPROP FUN(GETCLAUSES)@IBAS)
52400		(COND(ID(PRINC(GET FUN @IBAS))))
52450		(PRINT @INVARIANT_CONDITIONS_OF_ITERATION:)(PRINT @*)
52500		(PUTPROP FUN(GETCLAUSES)@INVAR)
52550		(COND(ID(PRINC(GET FUN @INVAR))))
52575		(COND((NOT(GET FUN @IBAS))(PUTPROP FUN(GET FUN @INVAR)@IBAS)))
52600		(PRINT @ITERATION_STEP_CONDITIONS:) (PRINT @*)
52650		(PUTPROP FUN(GETCLAUSES)@ISTEP)
52700		(COND(ID(PRINC(GET FUN @ISTEP))))
52750		(PRINT @CONTROL_TEST:*)
52800		(PUTPROP FUN(GETCLAUSES) @ICT)
52850		(COND(ID(PRINC(GET FUN @ICT))))
52900		(PRINT @OUTPUT_ASSERTION:*)
52950		(PUTPROP FUN(GETCLAUSES) @OA)
53000		(COND(ID(PRINC(GET FUN @OA))))
53050		(PRINT @ITERATIVE_GOAL:*)
53100		(PUTPROP FUN(GETCLAUSES)@IG)
53150		(COND(ID(PRINC(GET FUN @IG))))
53200		(COND((NOT(GET FUN @ICT))(PUTPROP FUN(GET FUN @IG)@ICT)))
53210		(SETQ BTSW T)
53220	(TERPRI)
53230	(GO SU4)
53250	SU6	(COND(BTSW(PRINT @IS_BINDING_TRACE_MECHANISM_REQUIRED_FOR_ITERATIVE_RULES?*)
53275			          (COND((NOT(READ))(SETQ BTSW NIL)))))
53287		(PRINT @INITIAL_AXIOMS:)
53300		(PRINT @*)
53350		(SETQ INITIAL(GETCLAUSES))
53400		(COND(ID(PRINC INITIAL)))
53450		(TERPRI)
53500		(COND((NULL L)(SETQ ID1 NIL)(GO SU61)))
53550		(PRINT @SEMANTIC_PROPERTIES_OF_PREDICATES_FROM_DISK?*)
53600		(SETQ ID1(READ))
53650		(COND(ID(PRINC ID1)))
53700		(TERPRI)
53750		(TERPRI)
53800	SU61	(SETQ PREDLISTS PREDLIST)
53850		(SETQ PREDLIST(GETPREDS FUNLIST PREDLIST))
53900		(COND((EQUAL PREDLIST PREDLISTS)(INC NIL)(GO SU9)))
53950		(SETQ PREDLISTS PREDLIST)
54000		(COND((NOT ID1)(GO SU7)))
54050		(SETQ SI(READ))
54100	SU62	(COND((NULL SI)(GO SU68)))
54150		(SETQ P(CAAR SI))
54200		(SETQ PP(CDAR SI))
54250		(PUTPROP P(CAR PP)@FLUENT) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE P)(LIST @QUOTE(CAR PP))@@FLUENT)PROPL))
54300		(PUTPROP P(CADR PP)@PARTIAL) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE P)(LIST @QUOTE(CADR PP))@@PARTIAL)PROPL))
54350		(PUTPROP P(CADDR PP)@UNCERT) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE P)(LIST @QUOTE(CADDR PP))@@UNCERT)PROPL))
54400		(PUTPROP P(CADDDR PP)@UNIQ) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE P)(LIST @QUOTE(CADDDR PP))@@UNIQ)PROPL))
54450		(PUTPROP P T @DEF) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE P)T @@DEF)PROPL))
54500		(SETQ SI(CDR SI))
54550		(GO SU62)
54600	SU68	(COND((READ)(SETQ FUNDEFLIST(READ))))
54650		(INC NIL)   (GO SU9)
54700	SU7	(PRINT @SEMANTIC_PROPERTIES_OF_PREDICATES:)
54750		(TERPRI)
54800		(INC NIL)
54850	SU8	(COND((OR(GET(CAAR PREDLIST)@SUBR)(GET(CAAR PREDLIST)@EXPR))(GO SU83)))
54900		(COND((GET(CAAR PREDLIST)@DEF)(GO SU83)))
54950		(PUTPROP(CAAR PREDLIST)T @DEF) (SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE(CAAR PREDLIST))T @@DEF)PROPL))
55000	 	(PRINT @IS_)
55050		(PRINC(CAR PREDLIST))
55100		(PRINC @_A_FUNCTION_OF_THE_STATE?*)
55150		(PUTPROP(CAAR PREDLIST)(READ)@FLUENT)
55200		(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE(CAAR PREDLIST))(LIST @QUOTE(GET(CAAR PREDLIST)@FLUENT))@@FLUENT)PROPL))
55250		(PRINT @IS_KNOWLEDGE_REPRESENTED_USING_)
55300		(PRINC(CAR PREDLIST))
55350		(PRINC @_PARTIAL?*)
55400		(PUTPROP(CAAR PREDLIST)(READ)@PARTIAL)
55450		(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE(CAAR PREDLIST))(LIST @QUOTE(GET(CAAR PREDLIST)@PARTIAL))@@PARTIAL)PROPL))
55500		(PRINT @IS_)
55550		(PRINC(CAR PREDLIST))
55600		(PRINC @_UNCERTAIN?*)
55650		(PUTPROP(CAAR PREDLIST)(READ)@UNCERT)
55700		(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE(CAAR PREDLIST))(LIST @QUOTE(GET(CAAR PREDLIST)@UNCERT))@@UNCERT)PROPL))
55750		(PRINT @UNIQUENESS_PROPERTY_IN_ARGUMENT_POSITIONS?)
55800		(PRINC @*)
55850		(PUTPROP(CAAR PREDLIST)(READ)@UNIQ)
55900		(SETQ PROPL(CONS(LIST @PUTPROP(LIST @QUOTE(CAAR PREDLIST))(LIST @QUOTE(GET(CAAR PREDLIST)@UNIQ))@@UNIQ)PROPL))
55950	SU83	(SETQ PREDLIST(CDR PREDLIST))
56000		(COND((NOT(NULL PREDLIST))(GO SU8)))
56050		(TERPRI)
56100	SU9	(PRINT @FILENAME=)
56150		(SETQ DEVNAME(READ))
56200		(SETQ FILENAME(READ))
56250		(PRINT @TRACE_MODE?)
56300		(SETQ TRACESW(READ))
56350		(PRINT @PERFORMANCE_STATISTICS?)
56400		(SETQ STAT(READ))
56450		(PRINT @LOOKAHEAD?)
56500		(SETQ LOOK(READ))
56503		(PRINT @DO_YOU_DESIRE_ALGEBRAIC_SIMPLIFICATION?)
56506		(PRINT @(IT IS RESTRICTED AT THIS TIME TO NESTED UNARY FUNCTIONS))
56509		(COND((NULL(READ))(GO SU12)))
56512	SU10	(PRINT @LEFT_SIDE_OF_RULE:)
56515		(SETQ LS(READ))
56518		(COND((NULL LS)(GO SU12)))
56521		(PRINT @RIGHT_SIDE_OF_RULE:)
56524		(SETQ RS(READ))
56527		(SETQ SRULES(CONS(LIST LS RS)SRULES))
56530		(GO SU10)
56550	SU12	(PRINT @DO_YOU_HAVE_PREFERENCE_IN_THE_ORDER_OF_RULE_APPLICATION?*)
56600		(COND((NULL(READ))(GO SU18)))
56650		(PRINT @STATE_ORDER_USING_SYNTAX:)
56700		(PRINT @TRY_<RULENAME>_BEFORE_<RULENAME>)
56750		(SETQ PO NIL)
56800	SU13	(PRINT @*)
56850		(SETQ TEMP(READ))
56900		(COND((NULL TEMP)(GO SU15)))
56950		(SETQ TEMP(READ))
57000		(READ)
57050		(SETQ PO(CONS(LIST TEMP(READ))PO))
57100		(GO SU13)
57150	SU15	(SETQ TEMP(PORDER FUNLIST PO))
57200		(COND((NULL TEMP)(PRINT @INCOMPATABLE_ORDERING!!__TRY_AGAIN)(GO SU12)))
57250	        (SETQ FUNLIST TEMP)
57300	SU18	(EVAL(LIST @OUTPUT DEVNAME FILENAME))
57350		(OUTC T)
57400		(COND(GOL(GO SU95)))
57450		(PRINT @(CSYM AV00))
57500		(PRINT @(THVSETQ(THV ANS)(LIST(LIST @THV(GENSYM)))))
57550		(PRINT @(THVSET(CAR(THV ANS))NIL))
57600		(TERPRI)(TERPRI)
57650		(PRINT(LIST  @THVSETQ(LIST @THV @WF)NIL))
57700		(PRINT(LIST  @THVSETQ(LIST @THV @GCTR)@0))
57750		(PRINT(LIST @THVSETQ(LIST @THV @ULS)T))
57800		(PRINT(LIST @THVSETQ(LIST @THV @UF)NIL))
57900		(PRINT(LIST @THVSETQ(LIST @THV @XN)@0))
57950		(PRINT(LIST @THVSETQ(LIST @THV @ZN)@0))
58000		(PRINT(LIST @THVSETQ(LIST @THV @YN)@0))
58010	(PRINT(LIST @THVSETQ(LIST @THV @COMMENTLIST)NIL))
58050		(PRINT(LIST @THVSETQ(LIST @THV @PLANL)NIL))
58100		(PRINT(LIST @THVSETQ(LIST @THV @ASSL)NIL))
58150		(PRINT(LIST @THVSETQ(LIST @THV @PASSUM)NIL))
58175		(PRINT(LIST @SETQ @GTEMP NIL))
58200	 	(PRINT(LIST @SETQ @CT NIL))
58225		(PRINT(LIST @SETQ @BTSW BTSW))
58250		(PRINT(LIST @THVSETQ(LIST @THV @DG)NIL))
58300	 	(PRINT(LIST @SETQ @AL NIL))
58350	 	(PRINT(LIST @SETQ @AN @0))
58355		(PRINT(LIST @SETQ @SRULES (LIST @QUOTE SRULES)))
58400		(PRINT(LIST @SETQ @SSW NIL))
58450		(PRINT(LIST @SETQ @FIFOL NIL))
58475	        (PRINT(LIST @SETQ @LIFOL NIL))
58500		(PRINT(LIST @SETQ @SN @0))
58550		(PRINT(LIST @SETQ @PN @0))
58600		(PRINT(LIST @SETQ @READY NIL))
58700		(PRINT(LIST @SETQ @UNCERTLIST NIL))
58750		(PRINT(LIST @THVSETQ(LIST @THV @DBLITS)NIL))
58800		(PRINT(LIST @THVSETQ(LIST @THV @ASSERTLITS)NIL))
58825		(PRINT(LIST @THVSETQ(LIST @THV @WASSERTLITS)NIL))
58850		(PRINT(LIST @SETQ @JOINCOND NIL))
58900		(PRINT(LIST @THVSETQ(LIST @THV @PROCLIST)NIL))
58950		(PRINT(LIST @THVSETQ(LIST @THV @PROCDATA)NIL))
59000		(TERPRI)(TERPRI)
59050	SU95	(SETQ PREDLISTS(APPEND PREDLISTS(IMODEL INITIAL)))
59100		(PREDARG# PREDLISTS)
59150		(CSYM PL00)
59200		(SOFTINT PREDLISTS)
59250		(SEMOP FUNLIST)
59300		(TERPRI)
59350		(SPRINT(LIST @DEFPROP @RESTOREPROP
59400			     (LIST @LAMBDA NIL
59450				   (APPEND(LIST @PROG NIL)
59500				          (LIST(LIST @SETQ @STAT STAT))(LIST(LIST @SETQ @FUNDEFLIST (LIST @QUOTE FUNDEFLIST)))
59550					  PROPL)) @EXPR)2 1)
59600		(OUTC NIL)
59650		(PRINT @SUBGOALING_SYSTEM_GENERATED!!!)
59700		(TERPRI)
59750	))
59800	EXPR)